#define  _CRT_SECURE_NO_WARNINGS
#include <string>
using namespace std;
class Solution {
public:
    string removeKdigits(string num, int k) {
        if (k >= num.size()) return "0";
        int i = 0;
        while (i < num.size() - 1)
        {
            if (num[i] > num[i + 1] && k > 0)
            {
                num.erase(i, 1);
                k--;
                if (i) i--;
            }
            else
                i++;
        }
        while (k--)
            num.pop_back();
        i = 0;
        while (num[i++] == '0');
        return num.substr(i - 1).size() ? num.substr(i - 1) : "0";
    }
};